package com.hongxun.modules.bss.entity;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.hongxun.common.validator.group.AddGroup;
import com.hongxun.common.validator.group.UpdateGroup;
import org.hibernate.validator.constraints.NotBlank;

import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
import java.util.List;


/**
 * 项目基础信息表
 * 
 * @author zkcn
 * @email youeremail@163.com
 * @date 2018-08-01 15:45:01
 */
public class APBaseEntity implements Serializable {
	private static final long serialVersionUID = 1L;
	
	//主键
	private String guid;
	//所属批次ID
	private String bGuid;
	//业务类型 数据字典 category_type
	private String pBCategory;
	//项目类别   数据字典  progect_type
	@NotBlank(message="项目类型不能为空", groups = {AddGroup.class, UpdateGroup.class})
	@JsonInclude(JsonInclude.Include.NON_NULL)
	private String pBType;
	//储备状态  数据字典 project_hivetype（规划、储备）
	private String pBHive;
	//项目状态  数据字典 project_state (踏勘、估算调整、归档)
	private String pBState;
	//项目名称
	@NotBlank(message="项目名称不能为空", groups = {AddGroup.class, UpdateGroup.class})
    @JsonInclude(JsonInclude.Include.NON_NULL)
	private String pBName;
	//项目地址
	private String pBAddress;
	//项目经度
	private BigDecimal pBLongitude;
	//项目纬度
	private BigDecimal pBLatitude;
	//定位范围
	private Integer pLocationRange;
	//模块版本
	private String pModuleVersion;
	//项目单位ID
	private Long pBOrgid;
	//所属申请书id
	private String aGuid;
	//所属预算标准id  多个 以，隔开
	private String sGuid;
	//最高电压等 数据字典 voltage_type(10kV,380V,220V)

	private String pBVoltage;
	//踏勘人ID 多个逗号隔开
	private String pBCollectid;
	//估算人ID 逗号隔开
	private String pBReckonid;
	//创建时间
	private Date pBAddtime;
	//项目申请书名称
	@NotBlank(message="项目申请书名称不能为空", groups = {AddGroup.class, UpdateGroup.class})
	@JsonInclude(JsonInclude.Include.NON_NULL)
	private String pBBookname;
	//是否作图
	@NotBlank(message="是否作图不能为空", groups = {AddGroup.class, UpdateGroup.class})
	@JsonInclude(JsonInclude.Include.NON_NULL)
	private String  isDraw;
	//估算调整日期
	private Date pBChangetime;
	//数据状态
	private String pBDatastate;
	//	台区个数
	private String totalRangeguid;
	//	审核意见
	private String pAuditOpinion;
	//	操作流程状态
	private String pOperationState;



	/**
	 * 设置：主键
	 */
	public void setGuid(String guid) {
		this.guid = guid;
	}
	/**
	 * 获取：主键
	 */
	public String getGuid() {
		return guid;
	}
	/**
	 * 设置：所属批次ID
	 */
	public void setBGuid(String bGuid) {
		this.bGuid = bGuid;
	}
	/**
	 * 获取：所属批次ID
	 */
	public String getBGuid() {
		return bGuid;
	}
	/**
	 * 设置：业务类型 数据字典 category_type
	 */
	public void setPBCategory(String pBCategory) {
		this.pBCategory = pBCategory;
	}
	/**
	 * 获取：业务类型 数据字典 category_type
	 */
	public String getPBCategory() {
		return pBCategory;
	}
	/**
	 * 设置：项目类别   数据字典  progect_type
	 */
	public void setPBType(String pBType) {
		this.pBType = pBType;
	}
	/**
	 * 获取：项目类别   数据字典  progect_type
	 */
	public String getPBType() {
		return pBType;
	}
	/**
	 * 设置：储备状态  数据字典 project_hivetype（规划、储备）
	 */
	public void setPBHive(String pBHive) {
		this.pBHive = pBHive;
	}
	/**
	 * 获取：储备状态  数据字典 project_hivetype（规划、储备）
	 */
	public String getPBHive() {
		return pBHive;
	}
	/**
	 * 设置：项目状态  数据字典 project_state (踏勘、估算调整、归档)
	 */
	public void setPBState(String pBState) {
		this.pBState = pBState;
	}
	/**
	 * 获取：项目状态  数据字典 project_state (踏勘、估算调整、归档)
	 */
	public String getPBState() {
		return pBState;
	}
	/**
	 * 设置：项目名称
	 */
	public void setPBName(String pBName) {
		this.pBName = pBName;
	}
	/**
	 * 获取：项目名称
	 */
	public String getPBName() {
		return pBName;
	}
	/**
	 * 设置：项目地址
	 */
	public void setPBAddress(String pBAddress) {
		this.pBAddress = pBAddress;
	}
	/**
	 * 获取：项目地址
	 */
	public String getPBAddress() {
		return pBAddress;
	}
	/**
	 * 设置：项目经度
	 */
	public void setPBLongitude(BigDecimal pBLongitude) {
		this.pBLongitude = pBLongitude;
	}
	/**
	 * 获取：项目经度
	 */
	public BigDecimal getPBLongitude() {
		return pBLongitude;
	}
	/**
	 * 设置：项目纬度
	 */
	public void setPBLatitude(BigDecimal pBLatitude) {
		this.pBLatitude = pBLatitude;
	}
	/**
	 * 获取：项目纬度
	 */
	public BigDecimal getPBLatitude() {
		return pBLatitude;
	}
	/**
	 * 设置：项目单位ID
	 */
	public void setPBOrgid(Long pBOrgid) {
		this.pBOrgid = pBOrgid;
	}
	/**
	 * 获取：项目单位ID
	 */
	public Long getPBOrgid() {
		return pBOrgid;
	}
	/**
	 * 设置：所属申请书id
	 */
	public void setAGuid(String aGuid) {
		this.aGuid = aGuid;
	}
	/**
	 * 获取：所属申请书id
	 */
	public String getAGuid() {
		return aGuid;
	}
	/**
	 * 设置：所属预算标准id  多个 以，隔开
	 */
	public void setSGuid(String sGuid) {
		this.sGuid = sGuid;
	}
	/**
	 * 获取：所属预算标准id  多个 以，隔开
	 */
	public String getSGuid() {
		return sGuid;
	}
	/**
	 * 设置：最高电压等 数据字典 voltage_type(10kV,380V,220V)
	 */
	public void setPBVoltage(String pBVoltage) {
		this.pBVoltage = pBVoltage;
	}
	/**
	 * 获取：最高电压等 数据字典 voltage_type(10kV,380V,220V)
	 */
	public String getPBVoltage() {
		return pBVoltage;
	}
	/**
	 * 设置：踏勘人ID 多个逗号隔开
	 */
	public void setPBCollectid(String pBCollectid) {
		this.pBCollectid = pBCollectid;
	}
	/**
	 * 获取：踏勘人ID 多个逗号隔开
	 */
	public String getPBCollectid() {
		return pBCollectid;
	}
	/**
	 * 设置：估算人ID 逗号隔开
	 */
	public void setPBReckonid(String pBReckonid) {
		this.pBReckonid = pBReckonid;
	}
	/**
	 * 获取：估算人ID 逗号隔开
	 */
	public String getPBReckonid() {
		return pBReckonid;
	}
	/**
	 * 设置：创建时间
	 */
	public void setPBAddtime(Date pBAddtime) {
		this.pBAddtime = pBAddtime;
	}
	/**
	 * 获取：创建时间
	 */
	public Date getPBAddtime() {
		return pBAddtime;
	}
	/**
	 * 设置：项目申请书名称
	 */
	public void setPBBookname(String pBBookname) {
		this.pBBookname = pBBookname;
	}
	/**
	 * 获取：项目申请书名称
	 */
	public String getPBBookname() {
		return pBBookname;
	}
	/**
	 * 设置：估算调整日期
	 */
	public void setPBChangetime(Date pBChangetime) {
		this.pBChangetime = pBChangetime;
	}
	/**
	 * 获取：估算调整日期
	 */
	public Date getPBChangetime() {
		return pBChangetime;
	}
	/**
	 * 设置：数据状态
	 */
	public void setPBDatastate(String pBDatastate) {
		this.pBDatastate = pBDatastate;
	}
	/**
	 * 获取：数据状态
	 */
	public String getPBDatastate() {
		return pBDatastate;
	}


	public String getIsDraw() {
		return isDraw;
	}

	public void setIsDraw(String isDraw) {
		this.isDraw = isDraw;
	}

	public String getTotalRangeguid() {
		return totalRangeguid;
	}

	public void setTotalRangeguid(String totalRangeguid) {
		this.totalRangeguid = totalRangeguid;
	}

	public Integer getPLocationRange() {
		return pLocationRange;
	}

	public void setPLocationRange(Integer pLocationRange) {
		this.pLocationRange = pLocationRange;
	}

	public String getPModuleVersion() {
		return pModuleVersion;
	}

	public void setPModuleVersion(String pModuleVersion) {
		this.pModuleVersion = pModuleVersion;
	}

	public String getPAuditOpinion() {
		return pAuditOpinion;
	}

	public void setPAuditOpinion(String pAuditOpinion) {
		this.pAuditOpinion = pAuditOpinion;
	}

	public String getPOperationState() {
		return pOperationState;
	}

	public void setPOperationState(String pOperationState) {
		this.pOperationState = pOperationState;
	}


}
